package com.qinglei.recoup.system.pojo;

import com.baomidou.mybatisplus.annotation.TableField;
import com.excel.poi.annotation.ExportField;
import com.qinglei.recoup.system.domain.BedHealthBreathDailyData;
import com.qinglei.recoup.system.domain.BedHealthDailyStatistics;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.time.LocalDate;
import java.util.List;
import java.util.Map;

/**
 * Created by qTo on 2021/1/16.
 */
@Data
public class SleepReportVO {

    @ApiModelProperty(value = "床位ID")
    private Integer bedId;

    @ApiModelProperty(value = "床位名称")
    private String bedName;

    @ApiModelProperty(value = "统计日期 格式 2020年1月10日")
    private String statisticsDate;

    @ApiModelProperty(value = "睡眠总时长 单位分钟")
    private Integer sleepDuration;

    @ApiModelProperty(value = "深睡时长 单位分钟")
    private Integer deepSleepDuration;

    @ApiModelProperty(value = "浅睡时长 单位分钟")
    private Integer lightSleepDuration;

    @ApiModelProperty(value = "清醒时长 单位分钟")
    private Integer clearSleepDuration;

    @ApiModelProperty(value = "离床时长 单位分钟")
    private Integer outBedDuration;

    @ApiModelProperty(value = "离床次数")
    private Integer outBedNum;

    @ApiModelProperty(value = "体动次数")
    private Integer turnOverNum;

    @ApiModelProperty(value = "睡眠数据 1-深睡 2-浅睡 3-清醒 4-离床 json数组，720个数据")
    private List<SleepDataVO> sleepData;

    @ApiModelProperty(value = "心率数据 json数组，720个数据")
    private List<Integer> heartPhaseData;

    @ApiModelProperty(value = "呼吸率数据 json数组，720个数据")
    private List<Integer> breathPhaseData;

    @ApiModelProperty(value = "体动数据 json数组，24个数据")
    private List<Integer> turnOverData;

    @ApiModelProperty(value = "20:00 - 8:00")
    private List<String> minutes;

    @ApiModelProperty(value = "睡眠得分")
    private Long score;

    @ApiModelProperty(value = "呼吸紊乱指数AHI")
    private Double ahi;

    @ApiModelProperty(value = "睡眠健康数据")
    private BedHealthBreathDailyData bedHealthBreathDailyData;

    @ApiModelProperty(value = "活力指数")
    private Integer  vitality;

    @ApiModelProperty(value = "情绪指数")
    private Integer  morale;

    @ApiModelProperty(value = "跌倒指数")
    private Integer  fall;

    @ApiModelProperty(value = "正向报告")
    private String positiveResult;

    @ApiModelProperty(value = "负面报告")
    private String negativeResult;

    @ApiModelProperty(value = "健康分数当日排名")
    private String  proportion;

    private Map<String,Object> gradeMap;

    @ApiModelProperty(value = "呼吸速率平均值")
    private double breathAvg;

    @ApiModelProperty(value = "呼吸速率最小值")
    private double breathMin;

    @ApiModelProperty(value = "呼吸速率最大值")
    private double breathMax;

    @ApiModelProperty(value = "心跳速率平均值")
    private double heartAvg;

    @ApiModelProperty(value = "心跳速率最小值")
    private double heartMin;

    @ApiModelProperty(value = "心跳速率最大值")
    private double heartMax;

    @ApiModelProperty(value = "08-00-00,上床时间(几点几分几秒)")
    private String  getBedIdx;

    @ApiModelProperty(value = "08-00-00起床时间(几点几分几秒)")
    private String  leaveBedIdx;

    @ApiModelProperty(value = "08-00-00入睡时间(几点几分几秒)")
    private String  sleepStIdx;

    @ApiModelProperty(value = "08-00-00晨醒时间(几点几分几秒)")
    private String  sleepEdIdx;

    @ApiModelProperty(value = "一维距离像数据切片(长度不固定)")
    private List<Double> hrrpSection;

    @ApiModelProperty(value = "呼吸相位图切片的数据(长度不固定)600的整数倍")
    private List<Double> breathPhaseSection;

    @ApiModelProperty(value = "用户感知价值呈现阈值")
    private List<Double> powThr1;

    @ApiModelProperty(value = "睡眠状态截取起始索引")
    private Integer cutStIdx;

    @ApiModelProperty(value = "睡眠状态截取结束索引")
    private Integer cutEdIdx;
}
